// Copyright (C) <2018> Zealcomm Inc.
//
// SPDX-License-Identifier: Apache-2.0
#import <Foundation/Foundation.h>
#import "IRTC/IRTCFrameGeneratorProtocol.h"
#import <WebRTC/RTCMacros.h>
NS_ASSUME_NONNULL_BEGIN
RTC_EXPORT
@interface IRTCGlobalConfiguration : NSObject
/**
 @brief Sets customized audio input enabled or not.<br>是否设置自定义的音频输入。
 @details When it is enabled, SDK will fetch audio frames from
 |audioFrameGenerator| instead of hardware audio devices, like mic.<br>当启用这个参数，SDK将从|audioFrameGenerator|而不是硬件音频设备（比如麦克风）获取音频数据。
 @param enabled Customized audio input enabled or not.<br>是否启用自定义音频输入。
 @param audioFrameGenerator An implementation which feeds audio frames to SDK.
 If |enabled| is NO, generator will be ignored. It cannot be nil if customized
 audio input is enabled. If generator is nil, customized audio input will be
 disabled.<br>一个将音频帧输入到SDK的音频帧生成器实现。如果|enabled|是NO，帧生成器会被忽略。
 如果启用了自定义音频输入，这个值不能是nil(空)。如果帧生成器是nil(空)，自定义音频输入将不被启用。
 */
+ (void)setCustomizedAudioInputEnabled:(BOOL)enabled
                   audioFrameGenerator:
                       (nullable id<RTCAudioFrameGeneratorProtocol>)
                           audioFrameGenerator;
@end
NS_ASSUME_NONNULL_END
